package com.itheima.health.service.impl;

import com.alibaba.dubbo.config.annotation.Service;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.itheima.health.dao.SetmealDao;
import com.itheima.health.entity.PageResult;
import com.itheima.health.pojo.Setmeal;
import com.itheima.health.service.SetmealService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;

import java.util.HashMap;
import java.util.Map;

@Service
public class SetmealServiceImpl implements SetmealService {

    //依赖注入dao
    @Autowired
    private SetmealDao setmealDao;

    /**
     *返回分页查询结果
     * @return
     */
    @Override
    public PageResult findPage(Integer currentPage, Integer pageSize, String queryString) {
        PageHelper.startPage(currentPage,pageSize);
        Page<Setmeal> page = setmealDao.findPage(queryString);
        return new PageResult(page.getTotal(),page.getResult());
    }

    /**
     * 新增套餐
     * @param setmeal 基本信息
     */
    @Transactional
    @Override
    public void add(Setmeal setmeal,Integer[] checkgroupId) {
        /**
         * 关于获取图片
         *
         */
        setmealDao.add(setmeal);
        //        根据基本信息中id进行关联检查组的存储  关联表t_setmeal_checkgroup
        //存在的问题，数据库中存入数据，但是获取id值为null，初步怀疑，事务问题
        //数据库添加数据后没有进行主键id返回，故id值为null，待确认 16.45
        System.out.println(setmeal.getId());
        for (Integer integer : checkgroupId) {
            Map map = new HashMap();
            map.put("setmeal_id",setmeal.getId());
            map.put("checkgroup_id",integer);
            setmealDao.addcheckgroup(map);
        }
    }


}
